জাভাস্ক্রিপ্ট ফাংশন ডেফিনিশন (JS Function Definition)

Web Development - জাভাস্ক্রিপ্ট (JavaScript) জাভাস্ক্রিপ্ট ফাংশন (JS Function) |
280
280

জাভাস্ক্রিপ্ট ফাংশন function কি-ওয়ার্ড দ্বারা ডিফাইন করা হয়।

আপনি ফাংশন ডিক্লেয়ারেশন অথবা ফাংশন এক্সপ্রেশন ব্যবহার করতে পারেন।


ফাংশন ডিক্লেয়ারেশন

ফাংশন ডিক্লেয়ারেশনের গঠনপ্রণালীঃ

জাভাস্ক্রিপ্ট ফাংশন ডেফিনিশন (JS Function Definition) - Example

function functionName (parameter) {
        এক্সিকিউটকৃত কোড
}

ফাংশনকে ডিক্লেয়ার করলেই ইহা এক্সিকিউট হয় না, ফাংশনকে কল করলে ইহা এক্সিকিউট হয়ঃ

জাভাস্ক্রিপ্ট ফাংশন ডেফিনিশন (JS Function Definition) - Example

<!DOCTYPE html>
<html>
<head>
   <title>জাভাস্ক্রিপ্ট উদাহরণ</title>
</head>
<body>
<p> এই উদাহারনে একটি ফাংশন কল করে যা একটি ক্যালকুলেশন এক্সিকিউট করে এবং নিম্নোক্ত ফলাফল প্রদান করেঃ </p>
    <p id="demo"></p>
<script>
    function myFunction(a, b) {
        return a * b;
    }
document.getElementById("demo").innerHTML = myFunction(4, 3);
</script>
</body>
</html>

জাভাস্ক্রিপ্টের সম্পাদনযোগ্য স্টেটমেন্টগুলোকে আলাদা করার জন্য সেমিকোলন(;) ব্যবহার করা হয়।
ফাংশন যেহেতু সম্পাদনযোগ্য স্টেটমেন্ট নয় তাই এর শেষে সেমিকোলন ব্যবহার করতে হয় না।


ফাংশন এক্সপ্রেশন

জাভাস্ক্রিপ্ট ফাংশনকে এক্সপ্রেশনের মাধ্যমেও ডিফাইন করা যায়।

ফাংশন এক্সপ্রেশনকে একটি ভ্যারিয়েবলের মধ্যে রাখা হয় এবং পরবর্তীতে ভ্যারিয়েবলকে ফাংশন হিসেবে ব্যবহার করা হয়ঃ

জাভাস্ক্রিপ্ট ফাংশন ডেফিনিশন (JS Function Definition) - Example

<!DOCTYPE html>
<html>
<head>
   <title>জাভাস্ক্রিপ্ট উদাহরণ</title>
</head>
<body>
<p>একটি ফাংশনকে ভেরিয়েবলের মধ্যে রাখা হল</p>
    <p id="demo"></p>
<script>
    var x = function (a, b) {return a * b};
    document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>

জাভাস্ক্রিপ্ট ফাংশন ডেফিনিশন (JS Function Definition) - Example

<!DOCTYPE html>
<html>
<head>
   <title>জাভাস্ক্রিপ্ট উদাহরণ</title>
</head>
<body>
    <p>একটি ফাংশনকে ভেরিএবল এর মধ্যে রাখার পর, ভেরিএবলটি   ফাংশন হিসেবে ব্যবহার হয়ঃ</p>
    <p id="demo"></p>
<script>
    var x = function (a, b) {return a * b};
    document.getElementById("demo").innerHTML = x(4, 3);
</script>
</body>
</html>

উপরের ফাংশনটি anonymous(নামহীন) ফাংশন।
যেসকল ফাংশনকে ভ্যারিয়েবলে রাখা হয়, তাদের নামের প্রয়োজন হয়না। তাদেরকে সবসময় ভ্যারিয়েবলের নাম দ্বারা কল করা হয়।

উপরের ফাংশনটি সেমিকোলন দ্বারা শেষ হয়েছে। কারন ইহা সম্পাদনযোগ্য স্টেটমেন্ট।


ফাংশন হয়েস্টিং(Hoisting)

এই টিউটোরিয়ালের শুরুতে আপনি হয়েস্টিং(Hoisting) সম্পর্কে জানতে পেরেছেন।

একটি স্কোপের ডিক্লেয়ারেশনকে সবার উপরে নিয়ে যাওয়াই হয়েস্টিং। এটি জাভাস্ক্রিপ্টের ডিফল্ট বৈশিষ্ট্য।

হয়েস্টিং শুধুমাত্র ভ্যারিয়েবল ও ফাংশন ডিক্লেয়ারেশনের ক্ষেত্রে প্রযোজ্য। এই কারনে,ফাংশন ডিক্লেয়ারেশনের পূর্বেই ফাংশনকে কল করা যায়ঃ

kt_satt_skill_example_id=1178

ফাংশন এক্সপ্রেশন হয়েস্টিং-এর অধীনে পড়ে না।


সেলফ ইনভোকিং(self-invoking) ফাংশন

ফাংশন এক্সপ্রেশনকে সেলফ ইনভোকিং ফাংশন করা যায়। ফাংশন ডিক্লেয়ারকে সেলফ ইনভোকিং ফাংশন করা যায় না।

সেলফ ইনভোকিং এক্সপ্রেশন কল করা ছাড়াই স্বয়ংক্রিয়ভাবে কাজ করে।

সেলফ ইনভোকিং ফাংশনের গঠনপ্রণালীঃ

kt_satt_skill_example_id=1179

kt_satt_skill_example_id=1181

জাভাস্ক্রিপ্টের ভাষায় একে self-invoking anonymous function বলা হয়।


ফাংশন ভ্যালু হিসেবেও ব্যবহার হয়

জাভাস্ক্রিপ্ট ফাংশন ভ্যালু হিসেবেও ব্যবহার হতে পারেঃ

kt_satt_skill_example_id=1183

জাভাস্ক্রিপ্ট ফাংশন এক্সপ্রেশন হিসেবেও ব্যবহার হতে পারেঃ

kt_satt_skill_example_id=1185

ফাংশন হলো অবজেক্ট

জাভাস্ক্রিপ্টের typeof অপারেটর "function" কে ফাংশন হিসেবে রিটার্ন করে।

কিন্তু অবজেক্ট হিসেবে ফাংশনকে ভালোভাবে বর্ণনা করা যায়।

জাভাস্ক্রিপ্ট ফাংশনের প্রোপার্টি এবং মেথড উভয়ই রয়েছে।

ফাংশনকে কল করা হলে কতটি আর্গুমেন্ট থাকে arguments.length প্রোপার্টি ফাংশনের আর্গুমেন্টের সংখ্যা রিটার্ন করেঃ

kt_satt_skill_example_id=1188

toString() মেথডটি ফাংশনকে স্ট্রিং হিসেবে রিটার্ন করেঃ

kt_satt_skill_example_id=1191

ফাংশনকে অবজেক্টের প্রোপার্টি হিসেবে ডিফাইন করলে তাকে অবজেক্টের মেথড বলা হয়।
নতুন অবজেক্ট তৈরি করার জন্য ব্যবহার করা হলে ফাংশনকে অবজেক্ট কনস্ট্রাক্টর বলা হয়।

Content added || updated By
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion
;